#define _CRT_SECURE_NO_WARNINGS
#include<stdlib.h>
#include<stdio.h>
int* intersection(int* nums1, int nums1Size, int* nums2, int nums2Size, int* returnSize)
{
    *returnSize = 0;
    int i = 0;
    int j = 0;
    int z = 0;
    int arr[1000] = { 0 };
    for (i = 0; i < nums1Size; i++)
    {
        for (j = 0; j < nums2Size; j++)
        {
            if (nums1[i] == nums2[j])
            {
                int flag = 1;
                for (z = 0; z < *returnSize; z++)
                {
                    if (nums1[i] == arr[z])
                    {
                        flag = 0;
                    }
                }
                if (flag)
                {
                    arr[*returnSize] = nums1[i];
                    (*returnSize)++;
                }
            }
        }
    }
    int* ret = malloc(sizeof(int) * (*returnSize));
    for (i = 0; i < *returnSize; i++)
    {
        ret[i] = arr[i];
    }
    return ret;
}
int main()
{
    int nums1[4] = { 8,0,3 };
    int nums2[2] = { 0,0 };
    int a = 0;
    int* arr = intersection(nums1,4,nums2,2,&a);
    printf("%s", arr);
    return 0;
}

/*
int* intersection(int* nums1, int nums1Size, int* nums2, int nums2Size, int* returnSize)
{
    *returnSize = 0;
    int i = 0;
    int j = 0;
    int z = 0;
    int* ret=malloc(sizeof(int)*1000);
    for (i = 0; i < nums1Size; i++)
    {
        for (j = 0; j < nums2Size; j++)
        {
            if (nums1[i] == nums2[j])
            {
                int flag = 1;
                for (z = 0; z < *returnSize; z++)
                {
                    if (nums1[i] ==ret[z])
                    {
                        flag = 0;
                    }
                }
                if (flag)
                {
                    ret[*returnSize] = nums1[i];
                    (*returnSize)++;
                }
            }
        }
    }
    return ret;
}
*/